home *** CD-ROM | disk | FTP | other *** search
-
- QEMM and Novell DOS 7 and DR-DOS 6
-
- Quarterdeck Technical Note #269 Filename: NOVELL7.TEC
- by Quarterdeck Quality Assurance CompuServe: NWDOS.TEC
- Last revised: 4/12/95 Category: NW
-
- Subject: Installation and compatibility notes on Novell DOS 7 and
- Digital Research's DR-DOS 6.
-
- All shipping versions of Quarterdeck products are essentially
- compatible with Novell DOS 7 and Digital Research's DR-DOS 6,
- alternative versions of DOS to Microsoft and IBM DOS offerings.
- There are, however, a few configuration issues that will be
- addressed in this note. In the first section, Novell DOS 7 issues
- are addressed; in the second DR-DOS 6 is discussed, and in the
- third, notes pertaining to both versions detail QEMM's advantages
- over the Novell DOS memory managers. We recommend strongly that
- you read all of the section pertaining to your version of DOS
- before installing QEMM and running the OPTIMIZE program.
-
- For the purposes of this note, "Novell DOS" will be used to denote
- either DR-DOS 6 and Novell DOS 7; when there is a distinction
- between the two, the name of the operating system will be
- specified in full. Note that Novell DOS 7 is an updated version
- of DR-DOS 6, and contains significant and worthwhile new features.
- Some of these features make using QEMM much easier on Novell DOS
- systems, and while not disparaging DR-DOS 6, Quarterdeck would not
- discourage DR-DOS 6 users from considering an upgrade to Novell
- DOS 7.
-
- Part One: Novell DOS 7
-
- Q. Novell DOS 7 promises better memory management than other
- versions of DOS. Is QEMM useful on Novell DOS 7 systems?
-
- A. While the memory management features of Novell DOS 7 represent
- an advance for DOS, Quarterdeck's memory managers still provide
- significant advantages for Novell DOS 7 users. These
- advantages are detailed at the end of this note.
-
- Q. Novell DOS provides a DPMS driver. What is DPMS?
-
- A. DPMS stands for "DOS Protected Mode Services". Effectively,
- this is a memory management specification of the same genre as
- EMS, XMS, VCPI, and DPMI, but is different from all of these.
- DPMS allows several of the utilities that come with Novell DOS
- 7 to load into extended memory, reducing conventional memory
- overhead. DPMS does not conflict with any of the memory
- management specifications offered by QEMM; in fact, DPMS
- allocates its memory from QEMM's memory pool.
-
- In the earliest versions of Novell DOS 7, the DPMS driver
- (DPMS.EXE, version 1.0 and 1.1) would not work properly when
- loaded high by any memory manager. Updates to Novell DOS 7 are
- available on CompuServe (GO NETWARE) and from Novell. The
- initialization size of DPMS.EXE is very large in these updated
- versions; thus DPMS.EXE can never be loaded high and will work
- properly in all cases. The size of the driver is only 2K, so
- this will not have a significant impact on conventional memory,
- but will greatly reduce the DOS memory overhead of DPMS-aware
- device drivers and TSRs.
-
- If you have a version of DPMS.EXE version 1.1 or earlier, you
- should strongly consider an update. If you cannot arrange to
- acquire an update, place the line
-
- DPMS
-
- in the OPTIMIZE.NOT file before running OPTIMIZE. Consult your
- QEMM manual for information on OPTIMIZE.NOT.
-
- Q. How do I install Novell DOS 7 on a machine that is already
- running QEMM?
-
- A. Novell DOS 7 may have problems installing properly if
- COMMAND.COM is loaded into upper memory. Before installing
- Novell DOS 7, please take the following precautionary steps to
- ensure that QEMM's DOS-Up feature is configured to load the
- command processor low:
-
- 1) At the DOS prompt, type QSETUP.
-
- 2) When the QEMM Setup welcome screen appears, press Enter.
-
- 3) At the QEMM Setup Options menu, type U to select Enable or
- Disable DOS-Up.
-
- 4) At the Enable or Disable DOS-Up menu, type P to select
- Partial.
-
- 5) At the DOS Up Options menu, type 2 until the word No appears
- after COMMAND.COM. Then press Enter.
-
- 6) At the QEMM Setup Options screen, press S to select Save
- Configuration and Quit.
-
- 7) You will be prompted to run Optimize. Follow the prompts on
- the screen.
-
- When Optimize completes, you can run the Novell DOS 7
- installation. The installation program will detect that a
- compatible memory manager (QEMM) is already installed and will
- not replace it. Follow the procedures outlined for you in the
- Novell DOS 7 Installation Guide.
-
- Q. How do I install QEMM and run OPTIMIZE on a Novell DOS 7
- machine?
-
- A. If you are running the Novell 7 Taskswitcher or Multitasker,
- shut down all of your programs and exit Task Manager before
- installing QEMM. Put the QEMM distribution disk in your floppy
- drive and run the INSTALL program as instructed in the QEMM
- manual.
-
- Before running OPTIMIZE, ensure that the DPMS driver is in
- OPTIMIZE.NOT as noted above.
-
- Q. Is the QEMM DOS-Up feature compatible with Novell DOS 7?
-
- A. Yes. The DOS-Up feature has been compatible with Novell DOS 7
- since QEMM 7.04. There are a couple of differences between
- DOS-Up on MS- or PC-DOS systems and DOS-Up under Novell DOS 7:
-
- - The line DEVICE=C:\QEMM\DOSDATA.SYS appears at the beginning
- of the CONFIG.SYS file on MS-DOS and IBM DOS systems to
- prepare the loading of the DOS kernel's data segment into
- upper memory. On Novell DOS 7 systems, the DOS data segment
- remains low, so QSETUP does not insert the DOSDATA.SYS line.
- If DOSDATA.SYS exists in your CONFIG.SYS file, it may be
- removed. It uses no memory and it will do no harm if you
- leave it in.
-
- - The SHELL statement in CONFIG.SYS will not contain QEMM's
- LOADHI command, which is used to load COMMAND.COM into upper
- memory on MS-DOS and IBM DOS systems only. On Novell DOS 7
- systems, DOS-Up does not load COMMAND.COM into upper memory.
-
- Q. Are there any considerations for NWCache?
-
- A. NWCache, Novell DOS 7's disk cache utility, defaults to loading
- its 16k lookahead buffer into conventional memory. If you need
- to free more conventional memory for your programs, you may
- want to use the /BU or /BE parameters on NWCache, which will
- load the look ahead buffer into either Upper or Expanded
- memory. If you have a system with a SCSI hard drive, you may
- need to keep the buffer in conventional memory.
-
- Q. Can I use the INSTALL= and HIINSTALL= commands in CONFIG.SYS?
-
- A. Novell DOS's INSTALL and HIINSTALL commands are incompatible
- with DOS-Up. If you are using either of these commands in your
- CONFIG.SYS file to load programs, load the programs from
- AUTOEXEC.BAT instead.
-
- Q. Can I load the command processor high?
-
- A. Novell DOS 7 allows you to load the command processor outside
- of conventional memory. Do this by adding the /MH, /MX, or /MU
- parameter to the command processor line in CONFIG.SYS. For
- example:
-
- SHELL=C:\COMMAND.COM /P /MH
-
- The /MH parameter causes the command processor to load into the
- HMA or conventional memory, depending on other configuration
- options you may have set; /MX loads the command processor into
- expanded memory; and /MU loads it into upper memory (or High
- RAM).
-
- Q. Can I load DOS into the HMA?
-
- A. Yes, though if you are using Quarterdeck's DESQview or
- DESQview/X, you shouldn't.
-
- You can have Novell DOS relocate the DOS kernel into the HMA,
- freeing space in conventional memory for DOS applications. We
- recommend that you do this unless you are using DESQview or
- DESQview/X. To load the parts of DOS into the HMA, add the
- following line anywhere in your CONFIG.SYS file:
-
- DOS=HIGH
-
- To get the most free conventional and upper memory, if you use
- DOS=HIGH to load parts of DOS into the HMA, put the command
- processor there as well.
-
- Q. Are there any potential pitfalls for DESQview or DESQview/X
- users?
-
- A. Yes -- a minor note for DESQview and DESQview/X users only:
- various Novell DOS 7 utilities, including SHARE and NLSFUNC,
- will put themselves into the HMA by default, even if the
- DOS=HIGH statement is not present in CONFIG.SYS. This will
- prevent DESQview and DESQview/X from using the HMA, which will
- almost always result in a decrease in the size of DESQview and
- DESQview/X windows. To prevent SHARE and NLSFUNC from using the
- HMA, give them one of the following parameters: /MU (which
- loads the program into upper memory) or /ML (which loads the
- program into conventional memory). The following example loads
- SHARE into upper memory:
-
- SHARE /MU
-
- Consult your Novell DOS 7 manual or the online documentation
- for further details.
-
-
- Q. Why does Manifest tell me that I have DOS 6 when I know that I
- have Novell DOS 7?
-
- A. Programs may request information on the DOS version from the
- system via the DOS Get Version call. To retain maximum
- compatibility with MS-DOS 6, Novell DOS 7 answers that its
- version number is 6.0 whenever a program asks.
-
-
- Part Two: DR-DOS 6
-
- We recommend strongly that you read ALL of this section of this
- note before installing QEMM and running the OPTIMIZE program on a
- DR-DOS 6 system. Pay special attention to the section on
- SuperStor below if you are using SuperStor disk compression.
-
- Q. How do I get the maximum amount of conventional memory with
- DR-DOS 6?
-
- A. There are several steps involved, for which a little background
- information is needed. However, you can recover as much as
- 629K of conventional memory using the features of QEMM and
- DR-DOS.
-
- 1) To get the most conventional memory available in DR-DOS 6, use
- the DOS-Up feature in QEMM, in combination with the DR-DOS
- HIDOS option. To do this, run QSETUP, and from the main menu
- select U for DOS-Up Options. Choose Y for Yes to enable all
- of the supported DOS-Up features, and Enter to return to the
- QSETUP main menu.
-
- 2) In MS- and PC-DOS, the DOS=HIGH command in CONFIG.SYS allows
- the DOS kernel to be loaded into the first 64K of extended
- memory (the HMA), which eliminates most of DOS's overhead.
- DR-DOS also permits the kernel to be loaded into the HMA,
- although in a slightly different way. This is advantageous for
- all DR-DOS users except those who use DESQview or DESQview/X,
- which use the the HMA more efficiently than DOS can. Thus if
- you're a DESQview or DESQview/X user, skip this next step. To
- load the DR-DOS kernel into the HMA, choose C for "Edit the
- Proposed CONFIG.SYS" and add the following line to CONFIG.SYS
- after the QEMM386.SYS line:
-
- DEVICE=C:\DRDOS\HIDOS.SYS /BDOS=FFFF HIDOS=ON
-
- 3) Use the DR-DOS HIBUFFERS command, which loads BUFFERS into the
- HMA, rather than into conventional memory or High RAM. Add
- this line to CONFIG.SYS:
-
- HIBUFFERS=20
-
- Since there might not be room in the HMA to load an excessive
- number of BUFFERS, we recommend limiting BUFFERS to 20.
-
- Q. Why doesn't OPTIMIZE arrange to load the HISTORY or FASTOPEN
- commands high?
-
- A. LOADHI.SYS will not load HISTORY or FASTOPEN because they are
- internal instructions to DR-DOS, rather than discrete programs
- as they are in MS-DOS. This causes no problems and does not
- increased conventional memory overhead.
-
- Q. What is the HIBUFFERS command?
-
- A. HIBUFFERS is the DR-DOS command to load buffers into the HMA.
- It will use the HMA even if the DR-DOS kernel is not loaded
- there. The BUFFERS command of DR-DOS causes the buffers to be
- loaded into High RAM if HIDOS=ON is in CONFIG.SYS. Each buffer
- takes an individual UMB. The BUFFERS.COM program from
- Quarterdeck works with DR-DOS; using the LOADHI.COM program
- with BUFFERS.COM will cause the buffers to be loaded into a
- single UMB. Use HIBUFFERS only if you are loading the DR-DOS
- kernel into the HMA, otherwise the HMA will be used for nothing
- but buffers.
-
- Q. Should I use the DR-DOS HILOAD, HIDEVICE, and HINSTALL commands
- in CONFIG.SYS?
-
- A. HILOAD, HIDEVICE, and HINSTALL are the DR-DOS internal commands
- that load TSRs and device drivers high. These commands are
- incompatible with QEMM. QEMM's LOADHI.COM, LOADHI.SYS, and
- INSTALL=LOADHI.COM /TSR which, respectively, perform the same
- functions, should be used instead.
-
- Q. Can I use the MEMMAX program that comes with DR-DOS?
-
- A. QEMM's VIDRAM program allows the user to extend conventional
- memory by using the address space normally associated with VGA
- graphics. DR-DOS comes with a similar program called MEMMAX
- that works only with the DR-DOS memory managers. Users of any
- Quarterdeck memory manager or enhancer should use VIDRAM
- instead of MEMMAX.
-
- Q. Can I use the DR-DOS CHAIN command with QEMM and OPTIMIZE?
-
- A. The DR-DOS CHAIN command allows the CONFIG.SYS to pass control
- to another CONFIG.SYS-like file. DR-DOS uses it on
- installation if you choose to install SuperStor. OPTIMIZE does
- not follow this passing of control to another file. If you are
- using CHAIN you must combine your configuration files into one
- for the duration of the OPTIMIZE process.
-
- Q. What about the DR-DOS utilities that load themselves high?
-
- A. DR-DOS utilities such as Super PC-KWIK and DELWATCH are polite
- enough to allow LOADHI.COM to load them high in the same manner
- as they would load themselves high; this allows them to be
- included by OPTIMIZE in its calculations. This is done
- automatically and does not require any attention from the user.
-
- Q. Can SuperStor be loaded high?
-
- A. SuperStor (SSTORDRV.SYS) is a disk-compression utility that is
- bundled with DR-DOS. It loads part of itself high, and leaves
- the rest of itself in conventional memory. The remainder
- cannot be loaded high with any memory manager. If you use
- DR-DOS's EMM386.SYS, SuperStor merely loads low without
- notification; if you use QEMM's LOADHI.SYS, SuperStor does not
- load at all. To prevent OPTIMIZE from trying to load
- SSTORDRV.SYS high, place the line
-
- SSTORDRV
-
- in the OPTIMIZE.NOT file. Consult your QEMM manual for more
- information on OPTIMIZE.NOT.
-
- Q. Does SuperStor present any complications for QEMM's
- installation?
-
- A. SuperStor works by creating a large file on the physical hard
- drive, making that file look like a hard drive, and compressing
- the data in the file. SuperStor may also swap the drive
- designations such that the compressed file (which by default
- would appear to be drive D) appears to be drive C, while the
- uncompressed portion of the hard drive becomes drive D. This
- can be convenient, since you will not have to re-write batch
- files or reconfigure software to run from a different drive.
- However, the DEVSWAP command poses complications for QEMM's
- installation and OPTIMIZE processes. However, thanks to the
- DR-DOS CHAIN command, and to the fact that DR-DOS reads a
- DCONFIG.SYS file before CONFIG.SYS if the former is present,
- things can be simplified even if drive swapping is going on.
- Note that the Stacker software that comes with Novell DOS 7
- loads before CONFIG.SYS is processed, and is much easier on the
- user than the SuperStor approaches presented here.
-
- Method One:
-
- Start with QEMM386.SYS on an uncompressed drive. Leave about
- one megabyte of space on the uncompressed drive. No other
- Quarterdeck files but QEMM386.SYS are needed from the QEMM
- directory.
-
- The first line in DCONFIG.SYS, which is the first CONFIG.SYS
- file read on bootup, should be the QEMM386.SYS line.
- QEMM386.SYS is in the QEMM directory of the same drive that
- DCONFIG.SYS is on. The entire DCONFIG.SYS will normally be
-
- DEVICE=C:\QEMM\QEMM386.SYS RAM DEVICE=C:\DRDOS\SSTORDRV.SYS
- DEVICE=C:\DRDOS\DEVSWAP.COM CHAIN=C:\CONFIG.SYS
-
- Now, move DEVICE=C:\QEMM\QEMM386.SYS to the CONFIG.SYS chained
- to from DCONFIG.SYS.
-
- MAKE CERTAIN THAT THE QEMM DEVICE LINE IS NO LONGER IN
- DCONFIG.SYS.
-
- Run OPTIMIZE.
-
- When you're through running OPTIMIZE, move the
- DEVICE=C:\QEMM\QEMM386.SYS line back to the DCONFIG.SYS file.
-
- That's all there is to it. You don't have to get rid of
- DEVSWAP or change the drive mappings as you do in Method Two
- below.
-
- Method Two:
-
- When running OPTIMIZE, DEVSWAP.COM must be remarked out or
- removed from the CONFIG.SYS. Also all references to drives C:
- in the AUTOEXEC.BAT and in the CONFIG.SYS after the DEVSWAP.COM
- line need to be changed to drive D:. Conversely, all
- references to drive D: should be changed to drive C:.
-
- The next step is to create a QEMM sub-directory on the
- uncompressed drive. This is typically drive D: when the
- DEVSWAP.COM device driver is loaded in your CONFIG.SYS. The
- following files need to be in the QEMM sub-directory in order
- to run OPTIMIZE properly: DOS-UP.SYS, QEMM386.SYS,
- OPTIMIZE.COM, OPTIMIZE.EXE, LOADHI.SYS, LOADHI.COM, LOGOPT.COM,
- BUFFERS.COM (if you are using DOS 2.x or 3.x), RSTRCFG.SYS,
- MCA.ADL (if you are running on a Microchannel machine), and all
- .VXD files, if you are planning on running Windows 3.0 in
- enhanced mode.
-
- Once you have done this, you should reboot before running
- OPTIMIZE so that the drives are set up correctly. Now you will
- be able to run OPTIMIZE normally. After OPTIMIZE has run, you
- may edit your CONFIG.SYS and restore the DEVSWAP.COM line.
- After you do this, you must edit your CONFIG.SYS and
- AUTOEXEC.BAT to restore the drive specifications to what they
- were before; e.g. change all references to drive D: to drive C:
- and all references to drive C: to drive D:. As mentioned above,
- if SSTORDRV.SYS is being loaded high, you must change it to
- load low because it won't work when loaded high. Reboot again.
- You are now getting the most out of your conventional memory.
-
- Q. Are there any more considerations with DR-DOS 6?
-
- A. Unlike MS- and PC-DOS, DOS hardware interrupt stacks are not
- provided in DR-DOS 6 -- that is, there is no STACKS command for
- CONFIG.SYS. There are programs that may malfunction when DOS
- does not allocate STACKS. As an example, Ventura Publisher 2.0
- will allocate its own hardware interrupt stacks when DOS does
- not do so. When Ventura Publisher uses expanded memory, it
- puts its stacks in the EMS page frame (a violation of the EMS
- spec). This comes into conflict with EMS-using software,
- including QEMM's Stealth feature. The only real resolution is
- to update your version of DOS to some later version -- Novell
- DOS 7, or one of the IBM or Microsoft versions.
-
- Q. If I'm using DR-DOS 6, why does Manifest report that I have DOS
- version 3.31 on the DOS overview screen?
-
- A. DR-DOS 6's API (Application Programming Interface) returns the
- version number 3.31 when a program using a DOS Get Version
- call. This is done for compatibility reasons. Manifest makes
- this call, and thus returns version 3.31 on the DOS Overview
- screen. DR-DOS loads an environment variable that causes the
- VER command to report DR-DOS Version 6, but Manifest reports
- the level of API support. For all programming purposes, DR-DOS
- 6 is version 3.31. There is no SETVER command, nor is it
- necessary.
-
- Q. Manifest reports more FILES than I have specified in
- CONFIG.SYS. Why?
-
- A. DR-DOS converts FCBS to FILE handles so Manifest and the
- FILES.COM program that comes with QEMM will report the total
- number of FILE handles to be the sum of the two. The minimum
- number of FILE handles is 20 and the minimum number of FCBS is
- 4. Another effect of this conflation of FCBS and FILE handles
- causes Manifest to report that there is only one FCB.
-
-
- Part 3: QEMM's Advantages
-
- Q. What are the advantages of QEMM over Novell DOS's memory
- managers?
-
- A. There are at least ten good answers to this question.
-
- 1) QEMM typically provides 64K more High RAM by default than the
- Novell DOS 7 memory managers, HIMEM.SYS and EMM386.EXE. The
- Novell DOS 7 products allow similarly includable areas to be
- included manually, but this requires some expertise, and QEMM
- is accompanied with better tools for this purpose.
-
- 2) QEMM's Squeeze technology allows larger resident programs to be
- loaded by allowing them to squeeze--temporarily--into the EMS
- page frame or areas used by Adapters when loading. The Novell
- DOS 7 memory managers do not provide a similar feature.
-
- 3) Using its Stealth option, QEMM can provide EVEN MORE High RAM
- (211K total is common) by hiding ROMs and allowing High RAM to
- be mapped over them. Neither Novell DOS 7's memory manager,
- nor any other third-party memory manager, currently provides
- this patented technology.
-
- 4) Novell DOS 7 has no equivalent to Quarterdeck's Manifest
- program. Manifest, included free with QEMM, provides extensive
- information about the computer on which it is running and is an
- invaluable tool when optimizing a system or diagnosing a memory
- problem or conflict.
-
- 5) The Novell DOS 7 memory manager provides no program to load
- automatically and optimally TSR's and device drivers into the
- regions of upper memory. Novice users may experience
- considerable difficulty achieving good results from the Novell
- DOS 7 LOADHIGH program, but even advanced users will appreciate
- the speed and accuracy with which QEMM's OPTIMIZE sets up a
- system.
-
- 6) The Novell DOS 7 memory manager provides no Analysis feature.
- QEMM's Analysis is extremely useful in determining areas of
- upper memory that can safely be used. Analysis also lets QEMM
- users reclaim unused addresses in the system ROM and in other
- areas in upper memory--a great advantage to memory-hungry
- users.
-
- 7) The Novell DOS 7 memory manager has no equivalent for QEMM's
- QuickBoot feature.
-
- 8) The Novell DOS 7 memory manager provides no control over the
- region of High RAM that can be used to load programs high. This
- means that even expert users may be unable to use High RAM
- efficiently in situations where TSR's and drivers must be
- loaded in a specific order. The Quarterdeck LOADHI programs
- allow TSR's or drivers to be directed to specific high memory
- locations, giving complete control to the user. Of course, as
- mentioned before, this feature is used expertly by the OPTIMIZE
- program in order to provide the optimum configuration.
-
- 9) On PS/2s and other Micro Channel systems, QEMM can
- automatically detect the addresses used by any adapter listed
- in our MCA.ADL file. This is especially valuable on systems
- with adapter RAM (used by many network cards, among other
- adapters). Adapter RAM can be particularly hard for 386 memory
- managers to detect. The Novell DOS 7 memory manager has no
- such feature. As the addresses used by network cards vary from
- machine to machine and card to card, QEMM's MCA.ADL file can
- save considerable work for network administrators in companies
- with large installations of PS/2s or micro channel compatibles
- on networks. Users of PS/2 machines that are not on a network
- will also benefit from this "ease of use" feature.
-
- 10) Novell DOS 7's EMM386.EXE is not compatible with Quarterdeck's
- DESQview multitasking products. QEMM is compatible with the
- Novell DOS 7's TASKMAX program, although TASKMAX may require
- Novell's EMM386.EXE for multitasking. Since DESQview allows
- much more sophisticated multitasking and windowing features
- than TASKMAX, Quarterdeck recommends using DESQview with QEMM.
-
- ******************************************************************
- * Trademarks are property of their respective owners. *
- * This and other technical notes may be available in updated *
- * forms through Quarterdeck's standard support channels. *
- * Copyright (C) 1995 Quarterdeck Corporation *
- ******************** E N D O F F I L E ***********************
-
-